home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 2000 August: Tool Chest / Dev.CD Aug 00 TC Disk 2.toast / pc / sample code / interapplication comm / 7edit / source / sveditglobals.h < prev    next >
Encoding:
C/C++ Source or Header  |  2000-06-23  |  5.0 KB  |  216 lines

  1. /*
  2.     File:        SVEditGlobals.h
  3.  
  4.     Contains:    
  5.  
  6.     Written by: Original version by Jon Lansdell and Nigel Humphreys.
  7.                             3.1 updates by Greg Sutton.    
  8.  
  9.     Copyright:    Copyright ©1995-1999 by Apple Computer, Inc., All Rights Reserved.
  10.  
  11.                 You may incorporate this Apple sample source code into your program(s) without
  12.                 restriction. This Apple sample source code has been provided "AS IS" and the
  13.                 responsibility for its operation is yours. You are not permitted to redistribute
  14.                 this Apple sample source code as "Apple sample source code" after having made
  15.                 changes. If you're going to re-distribute the source, we require that you make
  16.                 it clear in the source that the code was descended from Apple sample source
  17.                 code, but that you've made changes.
  18.  
  19.     Change History (most recent first):
  20.                 7/19/1999    Karl Groethe    Updated for Metrowerks Codewarror Pro 2.1
  21.                 11/1/95        DS                 Made Changes for GX Printing.
  22.                 10/12/95    CW                Added gHasDragManager flag, gDragTrackingHandlerUPP and
  23.                                                gDragReceiveHandlerUPP Drag Manager UPPs (all globals).
  24.     
  25.      
  26. */
  27.  
  28. #ifndef __SVEDITGLOBALS__
  29. #define __SVEDITGLOBALS__
  30.  
  31. #include <Types.h>
  32. #include <Quickdraw.h>
  33. #include <Menus.h>
  34. #include <Editions.h>
  35. #include <Printing.h>
  36. #include <Drag.h>
  37. #include <GXPrinting.h>
  38.  
  39. #define  SVEditAppSig 'SVED'
  40.  
  41. #define  WindowID     128
  42. #define  ErrorAlert   256
  43. #define  AdviseAlert  257
  44.  
  45.  
  46. #define        kRevertDialog                1002
  47. //#define        kStdOkItemIndex            1
  48. //#define        kStdCancelItemIndex        2
  49.  
  50.  
  51. #define        kSaveDontsaveDialog            1003
  52. //#define        kStdOkItemIndex            1
  53. //#define        kStdCancelItemIndex        2
  54. #define            kDontSaveItemIndex        3
  55.  
  56.  
  57. #define        kMiscStrings                1000
  58. #define            kQuittingIndex            1
  59. #define            kClosingindex            2
  60.  
  61. /*
  62.     Menu Resource IDs
  63. */
  64.   
  65. #define  appleID    128
  66. #define  fileID        129
  67. #define  editID        130
  68. #define  mfontID    131
  69. #define     sizeID        132
  70. #define  styleID    133
  71.   
  72. #define  kLastID    styleID
  73.  
  74. /*
  75.     Items in Apple Menu
  76. */
  77.   
  78. #define  aboutItem  1
  79.   
  80. /*
  81.     Items in File Menu
  82. */
  83.   
  84. #define  fmNew                  1
  85. #define  fmOpen              2
  86. #define  fmClose              4
  87. #define  fmSave              5
  88. #define  fmSaveAs              6
  89. #define  fmRevert              7
  90. #define  fmPageSetUp          9
  91. #define  fmPrint              10
  92. #define  fmPrintOne          11
  93. #define  fmQuit              13
  94.  
  95. #define fmNoGXPrint 10
  96. #define fmNoGXQuit  12
  97.   
  98. /*
  99.     Items in Edit Menu
  100. */
  101. #define  undoCommand              1
  102. #define  cutCommand              3
  103. #define  copyCommand              4
  104. #define  pasteCommand              5
  105. #define  clearCommand              6
  106. #define  selectAllCommand          7
  107.  
  108. /*
  109.     Items in Style Menu
  110. */
  111.  
  112. #define  cPlain              1
  113. #define  cBold                  2
  114. #define  cItalic             3
  115. #define  cUnderline         4
  116. #define  cOutline             5
  117. #define  cShadow             6
  118. #define  cCondense              7
  119. #define  cExtend             8
  120.  
  121. /*
  122.     Entry of Menu in myMenus
  123. */
  124. #define  appleM         0
  125. #define  fileM              1
  126. #define  editM              2
  127. #define  fontM              3
  128. #define  sizeM              4
  129. #define  styleM         5
  130. #define  kLastMenu        5
  131.  
  132. /*
  133.     Save Changes Dialog Items
  134. */
  135.   
  136. #define  aaSave              1
  137. #define  aaDiscard              2
  138. #define  aaCancel              3
  139.  
  140. #define  kOSEvent               app4Evt        /*event used by MultiFinder*/
  141. #define  kSuspendResumeMessage         1        /*high byte of suspend/resume event message*/
  142. #define  kResumeMask                 1        /*bit of message field for resume vs. suspend*/
  143. #define  kMouseMovedMessage          0xFA        /*high byte of mouse-moved event message*/
  144. #define  kNoEvents                     0        /*no events mask*/
  145.   
  146.  
  147. #define kMaxPages 1000                        /* Assumes pages > 32 pixels high */
  148.  
  149.  
  150. struct DocRec {
  151.   TEHandle         theText;
  152.   ControlHandle    vScrollBar;
  153.   ControlHandle    hScrollBar;
  154.   WindowPtr        theWindow;
  155.   Boolean          dirty;
  156.   short            refNum;
  157.   short            theFont;
  158.   short            theSize;
  159.   Style            theStyle;
  160.   Str255           theFileName;
  161.   FSSpec           theFSSpec;
  162.   short            lastID;      /*the last sectionID*/
  163.   THPrint          thePrintSetup;
  164.   Boolean          everSaved;
  165.   gxJob            documentJob;    /* Job for document. */
  166. };
  167.  
  168. typedef struct DocRec DocRec;
  169. typedef DocRec *DPtr;
  170.  
  171. typedef short PageEndsArray[kMaxPages];
  172.  
  173. struct HeaderRec {
  174.   Str255    theFont;
  175.   short        theSize;
  176.   Style     theStyle;
  177.   short     theLength;
  178.   short     lastID;
  179. };
  180.  
  181. typedef struct HeaderRec HeaderRec;
  182. typedef HeaderRec *HPtr, **HHandle;
  183.  
  184. #ifndef __COMPGLOBALS__
  185.  
  186. extern short      gWCount;
  187. extern short      gNewDocCount;
  188. extern MenuHandle myMenus[kLastMenu+1];
  189. extern short      gFontMItem;
  190. extern Boolean    gQuitting;
  191. extern Cursor     editCursor;
  192. extern Cursor     waitCursor;
  193. extern Boolean    gInBackground;
  194.   
  195.   /*now for the environment variables set up by Gestalt*/
  196.   
  197. extern Boolean    gGestaltAvailable;
  198. extern Boolean    gAppleEventsImplemented;
  199. extern Boolean    gAliasManagerImplemented;
  200. extern Boolean    gEditionManagerImplemented;
  201. extern Boolean    gOutlineFontsImplemented;
  202. extern Boolean    gRecordingImplemented;
  203. extern Boolean    gHasDragManager;
  204. extern Boolean    gGXIsPresent;
  205.  
  206. extern ControlActionUPP            gHScrollActionUPP;
  207. extern ControlActionUPP            gVScrollActionUPP;
  208. extern UserItemUPP                 gDefaultButtonUPP;
  209. extern DragTrackingHandlerUPP    gDragTrackingHandlerUPP;
  210. extern DragReceiveHandlerUPP    gDragReceiveHandlerUPP;
  211.  
  212. #endif
  213.  
  214. OSErr GXPrintingEventOverride(EventRecord *anEvent, Boolean filterEvent);
  215.  
  216. #endif